.TH std::coroutine_handle::coroutine_handle 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::coroutine_handle::coroutine_handle \- std::coroutine_handle::coroutine_handle

.SH Synopsis
   constexpr coroutine_handle() noexcept;                       \fB(1)\fP \fI(since C++20)\fP
   constexpr coroutine_handle( std::nullptr_t ) noexcept;       \fB(2)\fP \fI(since C++20)\fP
   coroutine_handle( const coroutine_handle& other ) = default; \fB(3)\fP \fI(since C++20)\fP
   coroutine_handle( coroutine_handle&& other ) = default;      \fB(4)\fP \fI(since C++20)\fP

   Creates a coroutine_handle that does not refer a coroutine, or copies a
   coroutine_handle.

   1,2) Initializes the underlying address ptr to nullptr. After construction,
   address() returns nullptr, and the coroutine_handle does not refer a coroutine.
   These constructors are not declared for the specialization
   std::coroutine_handle<std::noop_coroutine_promise>.
   3,4) Copies the underlying address. The copy constructor and move constructor are
   equivalent to implicitly declared ones.

.SH Parameters

   other - another coroutine_handle to copy

.SH Notes

   std::coroutine_handle<std::noop_coroutine_promise> is neither default constructible
   nor constructible from std::nullptr_t. std::noop_coroutine can be used to create a
   new std::coroutine_handle<std::noop_coroutine_promise>.

   Static member functions from_promise and from_address can also create a
   coroutine_handle.

.SH See also

   from_promise     creates a coroutine_handle from the promise object of a coroutine
   \fB[static]\fP (C++20) \fI(public static member function)\fP
   from_address     imports a coroutine from a pointer
   \fB[static]\fP (C++20) \fI(public static member function)\fP
   noop_coroutine   creates a coroutine handle that has no observable effects when
   (C++20)          resumed or destroyed
                    \fI(function)\fP
